package cn.com.chengq.drools.service.impl;

import cn.com.chengq.bean.MessageBean;
import cn.com.chengq.drools.service.HelloService;

public class HelloServiceImpl implements HelloService {

    private String message;
    private MessageBean messageBean;

    /**
     * Spring默认使用setter函数注入Bean对象的属性，这是一个基本类型的例子，使用<property name="" value=""/>注入
     * @param message message
     */
    public void setMessage(String message) {
        this.message = message;
    }

    /**
     * Spring默认使用setter函数注入Bean对象的属性，这是一个自定义类型的例子，使用<property name="" ref=""/>注入
     * @param messageBean message
     */
    public void setMessageBean(MessageBean messageBean) {
        this.messageBean = messageBean;
    }

    /**
     * Spring默认使用无参构造函数创建Bean对象。
     */
    public HelloServiceImpl() {
        System.out.println("HelloServiceImpl的无参构造函数。");
    }

    public HelloServiceImpl(String message, MessageBean messageBean) {
        System.out.println("HelloServiceImpl的有参构造函数。");
        this.message = message;
        this.messageBean = messageBean;
    }

    @Override
    public void say() {
        System.out.println(this);
    }

    @Override
    public String toString() {
        return "HelloServiceImpl{" +
                "message='" + message + '\'' +
                ", messageBean=" + messageBean +
                '}';
    }
}
